#ifndef TAGCOLLECTION_H
#define TAGCOLLECTION_H
//  File:         TagCollection.h
//  Author:       Scott Nordmann & Lauren Wallace
//  Description:  A class definition for the TagCollection.
#include "TagSpec.h"
#include "Tag.h"
#include <vector>
#include <string>
#include <fstream>

class TagCollection
{
public:
	TagCollection();
	void shutDown(std::ofstream& ofsave);
	void display()const;
	TagSpec* chooseTagSpec()const;
	void displayByTag()const;
	Tag* tagEntry();
	Tag* createHalfTag(TagSpec& spec);
	TagSpec* useTagSpec();
	TagSpec* createTagSpec();
	TagSpec* createTagSpec(const std::string& nam);
	void removeHalfTag(Tag& tag);
	std::string setNewTagName();//prompts user for a name then test to see if a tag with that name already exists

	bool isEmpty();


private:
	std::vector<TagSpec*> tagSpecs;
};

#endif